package com.example.service;


import com.example.entity.Account;
import com.example.entity.Business;
import com.github.pagehelper.PageInfo;

import java.util.List;

/**
 * 商家相关的业务接口
 */
public interface BusinessService {

    /**
     * 新增商家
     */
    void add(Business business);

    /**
     * 注册
     */
    void register(Account account);

    /**
     * 商家登录
     */
    Account login(Account account);

    /**
     * 单个删除
     */
    void deleteById(Integer id);

    /**
     * 批量删除
     */
    void deleteBatch(List<Integer> ids);

    /**
     * 修改商家
     */
    void updateById(Business business);

    /**
     * 修改密码
     */
    void updatePassword(Account account);

    /**
     * 查询所有
     */
    List<Business> selectAll(Business business);

    /**
     * 根据ID查询
     */
    Business selectById(Integer id);

    /**
     * 查询基础的商家信息
     * @param id 商家id
     * @return 上机信息
     */
    Business selectBasicBusinessById(Integer id);

    /**
     * 分页条件查询
     */
    PageInfo<Business> selectPage(Business business, Integer pageNum, Integer pageSize);

    /**
     * 验证商家权限
     */
    void checkBusinessAuth();

}